- if show_promotions? && show_callout?('promote_repository_features_dismissed') && (!@project.feature_available?(:push_rules) || !@project.feature_available?(:repository_mirrors) || !@project.feature_available?(:protected_refs_for_users))
  = render Pajamas::BannerComponent.new(banner_options: {class: 'user-callout', data: {uid: 'promote_repository_features_dismissed'}, id: 'promote_repository_features'},
    close_options: {'aria-label' => s_('Promotions|Dismiss repository features promotion'), class: 'js-close-callout'}) do |c|

    - c.with_illustration do
      = custom_icon('icon_push_rules', size: 144)

    - c.with_title do
      - if Gitlab::CurrentSettings.should_check_namespace_plan?
        = s_('Promotions|Upgrade your plan to improve repositories.')
      - else
        = s_('Promotions|Improve repositories with GitLab Enterprise Edition.')
    %div
      - unless @project.feature_available?(:push_rules)
        %p
          = link_to s_('Promotions|Push Rules'), help_page_path('user/project/repository/push_rules.md'), target: '_blank', rel: 'noopener noreferrer', class: 'gl-display-block'
          = s_('Promotions|Push Rules are defined per project so you can have different rules applied to different projects depends on your needs.')
      - unless @project.feature_available?(:repository_mirrors)
        %p
          = link_to s_('Promotions|Repository Mirroring'), help_page_path('user/project/repository/mirror/index.md'), target: '_blank', rel: 'noopener noreferrer', class: 'gl-display-block'
          = s_('Promotions|Repository Mirroring is a way to mirror repositories from external sources. It can be used to mirror all branches, tags, and commits that you have in your repository.')
      - unless @project.feature_available?(:protected_refs_for_users)
        %p
          = link_to s_('Promotions|Better Protected Branches'), help_page_path('user/project/protected_branches.md'), target: '_blank', rel: 'noopener noreferrer', class: 'gl-display-block'
          = s_('Promotions|You can restrict access to protected branches by choosing a role (Maintainers, Developers) as well as certain users.')

    - c.with_primary_action do
      = render 'shared/promotions/promotion_link_project', location: :repository_features
